c5f501a1d154e3127d1367263146fff5586428db,src/main/java/org/testng/internal/ClassHelper.java,ClassHelper,getAvailableMethods,#Class#,168

Before Change



    Class<?> parent = clazz.getSuperclass();
    while (null != parent) {
      methods.putAll(extractMethods(clazz, parent, methods));
      parent = parent.getSuperclass();
    }

After Change


   * the Java access rules).
   */
  public static Set<Method> getAvailableMethods(Class<?> clazz) {
    Map<String, Set<Method>> methods = Maps.newHashMap();
    for (final Method declaredMethod : clazz.getDeclaredMethods()) {
      Set<Method> declaredMethods = methods.get(declaredMethod.getName());
      if (declaredMethods == null) {
        declaredMethods = Sets.newHashSet();
        methods.put(declaredMethod.getName(), declaredMethods);
      }
      declaredMethods.add(declaredMethod);
    }

    Class<?> parent = clazz.getSuperclass();
    while (null != parent) {
      Set<Map.Entry<String, Set<Method>>> extractedMethods = extractMethods(clazz, parent, methods).entrySet();
      for (Map.Entry<String, Set<Method>> extractedMethod : extractedMethods){
        Set<Method> m = methods.get(extractedMethod.getKey());
        if (m == null) {
          methods.put(extractedMethod.getKey(), extractedMethod.getValue());
        } else {
          m.addAll(extractedMethod.getValue());
        }